Ext.require([ '*' ]);

var puerto = "8080";

Ext.onReady(function() {

	var empresaStore = Ext.create('Ext.data.Store', {
		fields : [ {
			name : 'codigo',
			type : 'int'
		}, {
			name : 'nombre',
			type : 'string'
		} ],
		proxy : {
			type : 'ajax',
			url : 'listarEmpresas.action',
			reader : {
				type : 'json',
				root : 'empresas'
			}
		}
	});

	var choferStore = Ext.create('Ext.data.Store', {
		fields : [ 'codigo', 'apellidos', 'vehiculo.numeroplaca'],
		proxy : {
			type : 'ajax',
			url : 'buscarChoferesPorCodigo.action',
			reader : {
				type : 'json',
				root : 'choferes'
			}
		}
	});
	
	var proxy_emp = new Ext.data.HttpProxy({
		method : 'GET',
		url : 'buscarChoferesPorCodigo.action'
	});

	var pnlDisp = Ext.create('Ext.form.Panel', {

		url : 'registrarDisponibilidad.action',
		renderTo : 'disponibilidad',
		title : 'Registrar Disponibilidad',
		bodyStyle : 'padding:5px 5px 0',
		width : '100%',
		fieldDefaults : {
			msgTarget : 'side',
			labelWidth : 75
		},
		defaults : {
			anchor : '95%'
		},
		items : [ {

			xtype : 'fieldset',
			title : '',
			layout : 'anchor',
			defaults : {
				anchor : '30%'
			},
			items : [ {
				xtype : 'combo',
				id : 'emp',
				name : 'empresaVar',
				fieldLabel : 'Empresa',
				emptyText : '--- Seleccionar ---',
				allowBlank : false,
				autoload : true,
				store : empresaStore,
				queryMode : 'remote',
				displayField : 'nombre',
				valueField : 'codigo',
				listeners : {

					select : function() {

						var combo = Ext.getCmp('selC');
						combo.clearValue();
						if (combo) {

							choferStore.getProxy().extraParams = {
								mxi : this.getValue()
							};
							choferStore.load();
						}
					}

				}
			}, {
				xtype : 'combo',
				id : 'selC',
				name : 'choferVar',
				fieldLabel : 'Chofer',
				emptyText : '--- Seleccionar ---',
				allowBlank : false,
				store : choferStore,
				displayField : 'apellidos',
				valueField : 'codigo',
				triggerAction : 'all',
				queryMode : 'remote',
				listeners : {

					select : function(param1, param2, param3) {

						var cmp = Ext.getCmp('placaVar');
					
						if(cmp){

							cmp.setValue(param2[0].data["vehiculo.numeroplaca"]);							
						}
						
						console.log(param2[0].data["vehiculo.numeroplaca"]);
					}

				}
			},
			{
				xtype : 'textfield',
				id: 'placaVar',
				fieldLabel : 'Placa',
				name : 'placa',
				allowBlank : false,
				readOnly: true
			}]
		} ],

		buttons : [ {
			text : 'Registrar',
			handler : function() {
				var form = this.up('form').getForm();
				if (form.isValid()) {

					form.submit({
						waitTitle : 'Conectando',
						waitMsg : 'Registrando...',
						success : function(form, action) {
							alert(action.result.msg);
						},
						failure : function(form, action) {
							Ext.Msg.alert('Error', action.result.msg);
						}
					});
				}
			}
		} ]

	});

});